package com.google.code.lf.gfm.model.grisbi;

import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlRootElement;

import com.google.code.lf.commons.util.ToStringHelper;

/**
 * Bean représentant les généralités du fichier de données <a href="http://grisbi.org/">Grisbi</a>.
 * <br/>Le binding bean/xml utilise <a href="https://jaxb.dev.java.net/">JAXB</a>.
 */
@XmlRootElement(name="Generalites")
@XmlAccessorType(XmlAccessType.NONE)
@SuppressWarnings("unused")
public class GrisbiFileGeneralites {
	@XmlElement(name="Version_fichier")
	private String versionFichier;

	@XmlElement(name="Version_grisbi")
	private String versionGrisbi;

	@XmlElement(name="Fichier_ouvert")
	private int isFichierOuvert;

	@XmlElement(name="Backup")
	private String backupFile;

	@XmlElement(name="Titre")
	private String titre;

	@XmlElement(name="Adresse_commune")
	private String adresseCommune;

	@XmlElement(name="Adresse_secondaire")
	private String adresseSecondaire;

	@XmlElement(name="Utilise_exercices")
	private int utiliseExercices;

	@XmlElement(name="Utilise_IB")
	private int utiliseIB;

	@XmlElement(name="Utilise_PC")
	private int utilisePC;

	@XmlElement(name="Utilise_info_BG")
	private int utiliseInfoBG;

	@XmlElement(name="Numero_devise_totaux_tiers")
	private int idDeviseTotauxTiers;

	@XmlElement(name="Numero_devise_totaux_categ")
	private int idDeviseTotauxCateg;

	@XmlElement(name="Numero_devise_totaux_ib")
	private int idDeviseTotauxIB;

	@XmlElement(name="Type_affichage_des_echeances")
	private int typeAffichageEcheances;

	@XmlElement(name="Affichage_echeances_perso_nb_libre")
	private int affichageEcheancesPersoNbLibre;

	@XmlElement(name="Type_affichage_perso_echeances")
	private int typeAffichageEcheancesPerso;

	@XmlElement(name="Numero_derniere_operation")
	private long idDerniereOperation;

	@XmlElement(name="Echelle_date_import")
	private int echelleDateImport;

	@XmlElement(name="Utilise_logo")
	private int utiliseLogo;

	@XmlElement(name="Chemin_logo")
	private String cheminLogo;

	@XmlElement(name="Affichage_opes")
	private String affichageOperations;

	@XmlElement(name="Rapport_largeur_col")
	private String rapportLargeurColonnes;

	@XmlElement(name="Ligne_aff_une_ligne")
	private int ligneAfficheeSiUneLigne;

	@XmlElement(name="Lignes_aff_deux_lignes")
	private String ligneAfficheeSiDeuxLignes;

	@XmlElement(name="Lignes_aff_trois_lignes")
	private String ligneAfficheeSiTroisLignes;

	/**
	 * Méthode <code>toString()</code> utilisant la réflection pour détailler l'objet.
	 * 
	 * @see ToStringHelper#toString()
	 */
	@Override
	public String toString() {
		return ToStringHelper.toString(this);
	}

	// -- Getters / Setters

	/**
	 * @return {@link #versionFichier}.
	 */
	public String getVersionFichier() {
		return versionFichier;
	}
	/**
	 * @return {@link #versionGrisbi}.
	 */
	public String getVersionGrisbi() {
		return versionGrisbi;
	}
}